<!--
  This file is a part of the open-eBackup project.
  This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
  If a copy of the MPL was not distributed with this file, You can obtain one at
  http://mozilla.org/MPL/2.0/.
  
  Copyright (c) [2024] Huawei Technologies Co.,Ltd.
  
  THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
  EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
  MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
  -->

<lv-treetable [lvData]="tableData" #lvTable>
  <thead>
  <tr>
    <th lvCellKey="permission">{{'system_permissions_label' | i18n}}</th>
  </tr>
  </thead>
  <tbody>
  <ng-container *ngTemplateOutlet="bodyContentTpl; context: { $implicit: lvTable.renderData }"></ng-container>

  <ng-template #bodyContentTpl let-data>
    <ng-container *ngFor="let item of data">
      <tr>
        <td [lvShowExpanded]="item.children?.length" [(lvExpanded)]="item.expanded">
          {{ item.label | i18n }}
        </td>
      </tr>
      <ng-container *ngIf="item.expanded && item.children?.length">
        <ng-container *ngTemplateOutlet="bodyContentTpl; context: { $implicit: item.children}"></ng-container>
      </ng-container>
    </ng-container>
  </ng-template>
  </tbody>
</lv-treetable>
